<!doctype html>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../assert_selection.js"></script>
<script>
if (window.internals)
  internals.settings.setEditingBehavior('win');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">|    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-0 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre"> |   אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-1 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">  |  אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-2 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">   | אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-3 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    |אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    |דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  '42-4 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    א|בצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    |דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  '42-5 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אב|צ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    |דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  '42-6 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ|    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-7 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ |   דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-8 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ  |  דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-9 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ   | דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-10 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    |דעפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    |חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  '42-11 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    ד|עפ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    |חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  '42-12 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דע|פ    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    |חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  '42-13 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ|    חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-14 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ |   חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-15 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ  |  חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-16 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ   | חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-17 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    |חיח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    |abc   def   jih   ופק  ופק    רסת     </div>',
  '42-18 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    ח|יח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    |abc   def   jih   ופק  ופק    רסת     </div>',
  '42-19 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חי|ח    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    |abc   def   jih   ופק  ופק    רסת     </div>',
  '42-20 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח|    abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    |abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-21 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח |   abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    |abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-22 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח  |  abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    |abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-23 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח   | abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    |abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-24 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    |abc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   |def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-25 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    a|bc   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   |def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-26 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    ab|c   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   |def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-27 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc|   def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   |def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-28 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc |  def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   |def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-29 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc  | def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   |def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-30 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   |def   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   |jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-31 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   d|ef   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   |jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-32 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   de|f   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   |jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-33 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def|   jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   |jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-34 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def |  jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   |jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-35 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def  | jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   |jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-36 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   |jih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   |\u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-37 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   j|ih   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   |\u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-38 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   ji|h   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   |\u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-39 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih|   ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   |\u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-40 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih |  ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   |\u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-41 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih  | ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   |\u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-42 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   |ופק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  |ופק    רסת     </div>',
  '42-43 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ו|פק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  |ופק    רסת     </div>',
  '42-44 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופ|ק  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  |ופק    רסת     </div>',
  '42-45 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק|  ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  |\u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-46 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק | ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  |\u05D5\u05E4\u05E7    \u05E8\u05E1\u05EA     </div>',
  '42-47 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  |ופק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    |רסת     </div>',
  '42-48 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ו|פק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    |רסת     </div>',
  '42-49 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופ|ק    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    |רסת     </div>',
  '42-50 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק|    רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    |\u05E8\u05E1\u05EA     </div>',
  '42-51 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק |   רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    |\u05E8\u05E1\u05EA     </div>',
  '42-52 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק  |  רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    |\u05E8\u05E1\u05EA     </div>',
  '42-53 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק   | רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D7\u05D9\u05D7    abc   def   jih   \u05D5\u05E4\u05E7  \u05D5\u05E4\u05E7    |\u05E8\u05E1\u05EA     </div>',
  '42-54 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    |רסת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת|     </div>',
  '42-55 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    ר|סת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת|     </div>',
  '42-56 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רס|ת     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת|     </div>',
  '42-57 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת|     </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     |</div>',
  '42-58 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת |    </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     |</div>',
  '42-59 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת  |   </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     |</div>',
  '42-60 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת   |  </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     |</div>',
  '42-61 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת    | </div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     |</div>',
  '42-62 left word');

selection_test(
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     |</div>',
  selection => selection.modify('move', 'left', 'word'),
  '<div contenteditable dir="rtl" style="white-space:pre">    אבצ    דעפ    חיח    abc   def   jih   ופק  ופק    רסת     |</div>',
  '42-63 left word');
</script>
